package cn.fl.insurance.transform;

import java.util.ArrayList;
import java.util.List;

import cn.cmm.base.framework.utils.CollectionUtils;
import cn.fl.insurance.dto.InsCompTypRDTO;
import cn.fl.insurance.vo.InsCompTypRVO;

/**
 * @Description: 保险公司险种关系表 转换器
 * VO是客户端传递数据到服务端进行转换的数据
 * VO转换数据变成DTO传递到服务端
 * VO不能在服务端出现
 */
public class InsCompTypRVOTransform {


    /**
     * DTO 转  VO
     *
     * @param dto InsCompTypRDTO
     * @return InsCompTypRVO
     */
    public static InsCompTypRVO toVO(InsCompTypRDTO dto) {
        InsCompTypRVO vo = null;
        if (dto != null) {
            vo = new InsCompTypRVO();
            vo.setId(dto.getId());
            vo.setInsCompId(dto.getInsCompId());//险种名称
            vo.setInsTypId(dto.getInsTypId());//险种标示
            vo.setRate(dto.getRate());//险种费率

            vo.setCrtTm(dto.getCrtTm());//创建时间
            vo.setCrtUsrId(dto.getCrtUsrId());//创建人
            vo.setMdfTm(dto.getMdfTm());//修改时间
            vo.setMdfUsrId(dto.getMdfUsrId());//修改人
        }
        return vo;
    }

    /**
     * VO 转 DTO
     *
     * @param vo InsCompTypRVO
     * @return InsCompTypRDTO
     */
    public static InsCompTypRDTO toDTO(InsCompTypRVO vo) {
        InsCompTypRDTO dto = null;
        if (vo != null) {
            dto = new InsCompTypRDTO();
            dto.setId(vo.getId());
            dto.setInsCompId(vo.getInsCompId());//险种名称
            dto.setInsTypId(vo.getInsTypId());//险种标示
            dto.setRate(vo.getRate());//险种费率

            dto.setCrtTm(vo.getCrtTm());//创建时间
            dto.setCrtUsrId(vo.getCrtUsrId());//创建人
            dto.setMdfTm(vo.getMdfTm());//修改时间
            dto.setMdfUsrId(vo.getMdfUsrId());//修改人
        }
        return dto;
    }

    /**
     * DTO集合 转 VO集合
     *
     * @param list List<InsCompTypR>
     * @return List<InsCompTypRDTO>
     */
    public static List<InsCompTypRVO> toVOList(List<InsCompTypRDTO> list) {
        List<InsCompTypRVO> voList = new ArrayList<InsCompTypRVO>();
        if (CollectionUtils.isNotEmpty(list)) {
            for (InsCompTypRDTO dto : list) {
                voList.add(toVO(dto));
            }
        }
        return voList;
    }
}
